package com.data.modules.gd.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import com.data.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 广电频道表
 * @Author: data-boot
 * @Date:   2022-11-29
 * @Version: V1.0
 */
@Data
@TableName("gd_live_channel")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="gd_live_channel对象", description="广电频道表")
public class GdLiveChannel implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**频道（guid）*/
	@Excel(name = "频道（guid）", width = 15)
    @ApiModelProperty(value = "频道（guid）")
    private String channelId;
	/**频道名称*/
	@Excel(name = "频道名称", width = 15)
    @ApiModelProperty(value = "频道名称")
    private String name;
	/**描述*/
	@Excel(name = "描述", width = 15)
    @ApiModelProperty(value = "描述")
    private String remark;
	/**频道号*/
	@Excel(name = "频道号", width = 15)
    @ApiModelProperty(value = "频道号")
    private String channelNumber;
	/**频道logo*/
	@Excel(name = "频道logo", width = 15)
    @ApiModelProperty(value = "频道logo")
    private String logoUrl;
	/**频道类型【8 组播，1单播，9双模】*/
	@Excel(name = "频道类型【8 组播，1单播，9双模】", width = 15)
    @ApiModelProperty(value = "频道类型【8 组播，1单播，9双模】")
    private Integer liveChannelType;
	/**频道分类id*/
	@Excel(name = "频道分类id", width = 15)
    @ApiModelProperty(value = "频道分类id")
    private String categoryId;
	/**频道分类名称*/
	@Excel(name = "频道分类名称", width = 15)
    @ApiModelProperty(value = "频道分类名称")
    private String categoryName;
	/**HLS地址，无权限观看的不下发播放地址，播放地址双方约定以加密方式传输*/
	@Excel(name = "HLS地址，无权限观看的不下发播放地址，播放地址双方约定以加密方式传输", width = 15)
    @ApiModelProperty(value = "HLS地址，无权限观看的不下发播放地址，播放地址双方约定以加密方式传输")
    private String hlsUrl;
	/**组播地址，无权限观看的不下发播放地址，播放地址双方约定以加密方式传输*/
	@Excel(name = "组播地址，无权限观看的不下发播放地址，播放地址双方约定以加密方式传输", width = 15)
    @ApiModelProperty(value = "组播地址，无权限观看的不下发播放地址，播放地址双方约定以加密方式传输")
    private String multiUrl;
	/**可回看时间时间段（单位秒）*/
	@Excel(name = "可回看时间时间段（单位秒）", width = 15)
    @ApiModelProperty(value = "可回看时间时间段（单位秒）")
    private Integer shiftTimeStamp;
	/**观看有效期*/
	@Excel(name = "观看有效期", width = 15)
    @ApiModelProperty(value = "观看有效期")
    private String viewPeriod;
	/**回看类型*/
	@Excel(name = "回看类型", width = 15, dicCode = "review_type")
	@Dict(dicCode = "review_type")
    @ApiModelProperty(value = "回看类型")
    private Integer reviewType;
	/**类型*/
	@Excel(name = "类型", width = 15, dicCode = "gd_type")
	@Dict(dicCode = "gd_type")
    @ApiModelProperty(value = "类型")
    private Integer type;
}
